'''
1.	现在用户在进商场之前需要从10张优惠券中，随机抽取一张优惠券。
比如抽到一个空凋的8折优惠券，后面在购物的过程中，空凋就可以按照8折后的价格来购买。
2.	优化购物小条的人性化打印。
	购物时间，卡余额，购物数量，购买总商品的价值。
3.	添加退货功能。在购买途中，某个商品不要了，退回到购物架中！
'''
import random
from datetime import datetime

money = 1000
shop_list = {'香皂': 10, '肥皂': 20, '牙刷': 30, '牙膏': 40, '毛巾': 50}
shop_cart = {}
discounts = [0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9]
discount = random.choice(discounts)
print('折扣：%s' % discount)

def count_amount(discount):
    """
    打印购物清单并返回总金额
    :return: 总金额
    """
    amount = 0
    print('----------------------------')
    print('购物清单：')
    for shop, number in shop_cart.items():
        value = number * shop_list[shop]
        amount += value
        print('商品：%s  数目：%s  单价：%s  总价： %s' % (shop, number, shop_list[shop], value))
    print('折扣：' + str(discount))
    print('打折后总金额：' + str(amount * discount))
    print('时间：' + datetime.now().strftime('%Y-%m-%d  %H:%M:%S'))
    print('----------------------------')
    return amount * discount


# 添加购物车
while True:
    # 打印商品列表
    for shop, value in shop_list.items():
        print('商品:', shop, '  价格：', value)
    print('结束添加请输入: Q / q')

    # 添加购物车
    shop = input('请输入要购买的商品：')
    if shop == 'Q' or shop == 'q':
        break
    elif shop in shop_list:
        while True:
            number = int(input('请输入要购买的数目：'))
            if number > 0:
                if shop in shop_cart:
                    shop_cart[shop] += number
                else:
                    shop_cart[shop] = number
                print('添加成功')
                break
            else:
                print('请输入大于0的整数')
    else:
        print('没有这个商品')

# 清理购物车
while True:
    count = count_amount(discount)
    print('结束清理购物车请输入: Q / q')
    shop = input('请清理的商品：')
    if shop == 'Q' or shop == 'q':
        break
    elif shop in shop_cart:
        del shop_cart[shop]
    else:
        print('没有这个商品')

# 结账
# 3.1 计算总金额
amount = count_amount(discount)
# 判断用户金额是否足够
if amount < money:
    money -= amount
    print('购买成功，余额：' + str(money))
else:
    print('余额不足')



